package com.zzmm.socket.qq.common;

import com.zzmm.socket.qq.client.QQClient;

import java.util.Scanner;

/**
 * 这里采用同步的方式处理线程并发问题
 * 防止内容与实际不符，特别是多线程同时scanner的时候
 * 如果接收不到消息可以时候{@link QQClient#levelTwo() } -> 8 强制刷新，多刷几下，该有的消息就都有了
 */
public class ConsoleUtil {

    private static final Scanner SCANNER = new Scanner(System.in);

    public static String getString(String hint, Object... args) {
        synchronized (ConsoleUtil.class) {
            System.out.printf(hint, args);
            return SCANNER.next();
        }
    }

    public static void printf(String hint, Object... args) {
        synchronized (ConsoleUtil.class) {
            System.out.printf(hint, args);
        }
    }

    public static void println(String hint) {
        synchronized (ConsoleUtil.class) {
            System.out.println(hint);
        }
    }


}
